package com.ascent.server;

import java.util.*;
import com.ascent.bean.Product;
import com.ascent.bean.User;

/**
 * 这个抽象类定义了如何读取一个数据文件。
 * 它提供的方法可以用来获得产品的分类和具体的产品信息
 * @author ascent
 * @version 1.0
 */
public abstract class DataAccessor {

	/**
	 * 存放产品信息的HashMap/Hashtable .
	 */
	protected HashMap<String,ArrayList<Product>> dataTable;

	/**
	 * 存放用户信息的HashMap/Hashtable .
	 */
	protected HashMap<String,User> userTable;

	/**
	 * 最近增加的产品
	 */
	protected ArrayList<Product> recentProductList;

	/**
	 * 从文件中读取数据
	 */
	public abstract void load();

	/**
	 * 默认构造方法
	 */
	public DataAccessor() {
		dataTable = new HashMap<String,ArrayList<Product>>();
		userTable = new HashMap<String,User>();
		recentProductList = new ArrayList<Product>();
	}
	protected void log(Object msg) {
		System.out.println("数据存取类　Data Accessor:  " + msg);
	}
}